//OOP - Object Oriented Programming
//
//-> ability to create user defined types
//-> what is a type?
//	- properties (member variables)
//	- behaviours (member functions)
//
//"What does it contain?"
//"What can you do with it?"
//
//- In C++, type is created with "class" keyword
//- What does a class provide?
//i)		Encapsulation - divide and conquer, separation of declaration and definition
//ii)		Inheritance
//iii)		Polymorphism

#ifndef INCLUDED_FIGHTER_H
#define INCLUDED_FIGHTER_H

#include <SGE.h>
using namespace SGE;

class Fighter
{
	public:
		Fighter();
		~Fighter();

		//***** These four functions are linked to the four main functions of WinMain *****
		void Load();
		void Unload();
		void Update(float deltaTime);
		void Render();
		//***** --------------------------------------------------------------------- *****

		//get functions gives us fighter's position
		const SVector2& GetPosition() const { return mPosition; }

		//set poss
		void SetPosition(const SVector2 pos)
		{
			mPosition = pos;
		}
	private:
		SGE_Sprite mSprite;
		SVector2 mPosition;
};
#endif // #ifndef INCLUDED_FIGHTER_H